BattleBot Project

BattleBot

For this project, I designed and programmed an autonomous robot (BattleBot) using an Arduino-based embedded system. The goal was to create a fully independent robot capable of navigating a track, following lines, avoiding obstacles, and completing tasks as part of a competitive relay challenge. The robot integrates multiple hardware components, including motors, line sensors, rotation encoders, an ultrasonic distance sensor, and a servo-controlled gripper. I developed the control logic in C/C++ using the Arduino IDE, implementing features such as PID-based line following, state-machine behavior, and real-time sensor processing. A key focus of the project was combining software and hardware into a reliable system. I worked on calibrating sensors, optimizing movement accuracy, and ensuring stable performance under different conditions. The robot was required to operate autonomously, making decisions based on sensor input without human intervention. In addition to development, I contributed to the full engineering process: requirements analysis, technical design, testing, and iteration. The final result was a functional embedded system that successfully completed the course challenges and demonstrated efficient navigation and object interaction. This project strengthened my skills in embedded programming, hardware interfacing, debugging, and system design, while also improving my ability to work in a structured, project-based environment.


GitHub Repository
Requirments Analysis Download
Technical Design Download
Weekly Assignments Download
Race Day Download
Self-reflection Download